@media (-webkit-device-pixel-ratio: 1.5),
(device-pixel-ratio: 1.5) {
  .border-1px {
    &:after {
      -webkit-transform: scaleY(.7);
      transform: scaleY(.7);
    }
  }
}

@media (-webkit-device-pixel-ratio: 2),
(device-pixel-ratio: 2) {
  .border-1px {
    &:after {
      -webkit-transform: scaleY(.5);
      transform: scaleY(.5);
    }
  }
}

.border-1px(@borderColor: #f5f5f5, @leftMargin: 0px) {
  position: relative;
  overflow: hidden;
  &:after {
    display: block;
    position: absolute;
    left: @leftMargin;
    bottom: 0;
    width: 100%;
    border-top: 1px solid @borderColor;
    content: '';
  }
}

.border-1px {
  position: relative;
  &:after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-top: 1px solid #f5f5f5;
    content: '';
  }
}

.border-none() {
  &:after {
    display: none;
  }
}

.clearfix {
  display: inline-block;
  &::after {
    display: block;
    content: ".";
    height: 0;
    line-height: 0;
    clear: both;
    visibility: hidden
  }
}